Francisco Catalán
21-09-2021
R es un lenguaje de programación con un enfoque al análisis estadístico ampliamente utilizado en ciencia de datos. Descargar.
Rstudio es un entorno de desarrollo integrado(IDE) para R que proporciona servicios integrales para facilitarle al desarrollador o programador el desarrollo de software. Descargar
Para asignar variables utilizaremos “<-”
## [1] "numeric"
## [1] "character"
## [1] "logical"
Es la estructura de dato mas básico en R y se define como un conjunto de elementos asignados a la función c()
## [1] "numeric"
R “obliga” a que todos los elementos de una misma estructura sean del mismo tipo de datos, a esta propiedad se le llama coerción.
## [1] "character"
logical < numeric < character
Las matrices y arrays pueden ser descritas como vectores multidimensionales. Al igual que un vector, únicamente pueden contener datos de un sólo tipo, pero además de largo, tienen más dimensiones.
## [1] "matrix" "array"
## [,1] [,2] [,3] [,4]
## [1,] 1 4 7 10
## [2,] 2 5 8 11
## [3,] 3 6 9 12
forUn bucle for es la iteración repetitiva de un código un determinado número de veces.
for(i in 1:10){
#codigo
}
Ejemplo:
## [1] "El factorial de 10 es: 3628800"
Otros bucles comunes son while y do while
if(Condicion 1){
#codigo
}else if(Condicion 2){
#codigo
}else{
#codigo
}
funciones
mifuncion <- function(argumento1, argumento2, …) { cuerpo resultado }
Ejemplo:
## [1] 0.5504819
Un grafo es una pareja de conjuntos (V, E) donde:
Grafo no dirigido
LLamamos matriz de adyacencia de G a la matriz nxn, A ={aij}
Grafo no dirigido
## A B C D
## A 0 3 26 11
## B 3 0 0 0
## C 26 0 0 0
## D 11 0 0 0
Un diagrama de sankey trabaja de forma similar a un grafo sobre una matriz.
## A B C D
## A 0 3 26 11
## B 0 0 0 0
## C 0 0 0 0
## D 0 0 0 0
El package “sankeydiagram” fue diseñado para trabajar con archivos CSV descargados desde la plataforma Swift:
CxF(): Toma respuestas en múltiples columnas y las reordena en una columna única.matrizRelacional(): Toma el archivo ordenado y genera una matriz según 2 criterios en la columna Questions.sankey(): Grafica cualquier matriz en un diagrama de Sankey.PROBLEMA: CxF Y matrizRelacional son funciones muy específicas y la tabla de entrada requiere un formato especifico
El package se puede descargar e instalar desde GitHub escribiendo en la consola de Rstudio:
install.package("devtools")
library(devtools)
install_github("franciscoxaxo/sankeydiagram")
library("sankeydiagram")
Ver en GitHub
Para comenzar se necesita que los títulos de las 7 primeras columnas sean:
“ï..ActiveScreener.Id”, “Time.of.Screening”, “Title”, “Authors”, “Question”, “List.of.Reviewers”,“Answers”
Para cargar la tabla utilizaremos la función read.csv():
df <- read.csv(rutaDelArchivo, sep = ";", encoding = "UTF-8", na.string = "")
Utilizaremos la función CxF para ordenar esta tabla:
CxF(df)
El nuevo archivo lucira más o menos así:
Para cargar la nueva tabla utilizaremos nuevamente la función read.csv():
df2 <- read.csv(rutaDelArchivo, sep = ";", encoding = "UTF-8")
Para transformarlo a matriz escojemos dos criterios de la columna Questions y utilizamos la funcion matrizRelacional:
matriz <- matrizRelacional(df2, criterio1 = ####, criterio2 = ####)
Esta matriz puede ser representada utilizando la funcion sankey:
sankey(matriz)